{"metadata":{"kernelspec":{"language":"python","display_name":"Python 3","name":"python3"},"language_info":{"name":"python","version":"3.7.10","mimetype":"text/x-python","codemirror_mode":{"name":"ipython","version":3},"pygments_lexer":"ipython3","nbconvert_exporter":"python","file_extension":".py"}},"nbformat_minor":4,"nbformat":4,"cells":[{"cell_type":"markdown","source":"# Importing Libraries","metadata":{}},{"cell_type":"code","source":"! pip install biosppy   ","metadata":{"execution":{"iopub.status.busy":"2021-07-31T03:27:38.477025Z","iopub.execute_input":"2021-07-31T03:27:38.477496Z","iopub.status.idle":"2021-07-31T03:27:50.980196Z","shell.execute_reply.started":"2021-07-31T03:27:38.477406Z","shell.execute_reply":"2021-07-31T03:27:50.979049Z"},"trusted":true},"execution_count":1,"outputs":[{"name":"stdout","text":"Collecting biosppy\n  Downloading biosppy-0.7.3.tar.gz (85 kB)\n\u001b[K     |████████████████████████████████| 85 kB 1.3 MB/s eta 0:00:011\n\u001b[?25hCollecting bidict\n  Downloading bidict-0.21.2-py2.py3-none-any.whl (37 kB)\nRequirement already satisfied: h5py in /opt/conda/lib/python3.7/site-packages (from biosppy) (2.10.0)\nRequirement already satisfied: matplotlib in /opt/conda/lib/python3.7/site-packages (from biosppy) (3.4.2)\nRequirement already satisfied: numpy in /opt/conda/lib/python3.7/site-packages (from biosppy) (1.19.5)\nRequirement already satisfied: scikit-learn in /opt/conda/lib/python3.7/site-packages (from biosppy) (0.23.2)\nRequirement already satisfied: scipy in /opt/conda/lib/python3.7/site-packages (from biosppy) (1.6.3)\nRequirement already satisfied: shortuuid in /opt/conda/lib/python3.7/site-packages (from biosppy) (1.0.1)\nRequirement already satisfied: six in /opt/conda/lib/python3.7/site-packages (from biosppy) (1.15.0)\nRequirement already satisfied: joblib in /opt/conda/lib/python3.7/site-packages (from biosppy) (1.0.1)\nRequirement already satisfied: opencv-python in /opt/conda/lib/python3.7/site-packages (from biosppy) (4.5.2.54)\nRequirement already satisfied: cycler>=0.10 in /opt/conda/lib/python3.7/site-packages (from matplotlib->biosppy) (0.10.0)\nRequirement already satisfied: python-dateutil>=2.7 in /opt/conda/lib/python3.7/site-packages (from matplotlib->biosppy) (2.8.1)\nRequirement already satisfied: kiwisolver>=1.0.1 in /opt/conda/lib/python3.7/site-packages (from matplotlib->biosppy) (1.3.1)\nRequirement already satisfied: pyparsing>=2.2.1 in /opt/conda/lib/python3.7/site-packages (from matplotlib->biosppy) (2.4.7)\nRequirement already satisfied: pillow>=6.2.0 in /opt/conda/lib/python3.7/site-packages (from matplotlib->biosppy) (8.2.0)\nRequirement already satisfied: threadpoolctl>=2.0.0 in /opt/conda/lib/python3.7/site-packages (from scikit-learn->biosppy) (2.1.0)\nBuilding wheels for collected packages: biosppy\n  Building wheel for biosppy (setup.py) ... \u001b[?25ldone\n\u001b[?25h  Created wheel for biosppy: filename=biosppy-0.7.3-py2.py3-none-any.whl size=95409 sha256=6c6abfd76e1ced6725018379e9294d5e343dd2bc82372f8a7bc6b4a545a09452\n  Stored in directory: /root/.cache/pip/wheels/2f/4f/8f/28b2adc462d7e37245507324f4817ce1c64ef2464f099f4f0b\nSuccessfully built biosppy\nInstalling collected packages: bidict, biosppy\nSuccessfully installed bidict-0.21.2 biosppy-0.7.3\n\u001b[33mWARNING: Running pip as root will break packages and permissions. You should install packages reliably by using venv: https://pip.pypa.io/warnings/venv\u001b[0m\n","output_type":"stream"}]},{"cell_type":"code","source":"import numpy as np\nimport pandas as pd\nimport matplotlib.pyplot as plt\nimport tensorflow as tf\nimport wfdb\nimport os                                                                                                  \nimport gc\nimport scipy       \nimport sklearn\nfrom pathlib import Path\nfrom sklearn.utils import shuffle\nfrom sklearn.manifold import TSNE\nimport seaborn as sns\nfrom sklearn import preprocessing\nimport shutil\nimport math\nimport random\nfrom scipy.spatial import distance\nfrom biosppy.signals import ecg\nfrom scipy.interpolate import PchipInterpolator","metadata":{"execution":{"iopub.status.busy":"2021-07-31T03:27:50.982019Z","iopub.execute_input":"2021-07-31T03:27:50.982430Z","iopub.status.idle":"2021-07-31T03:27:59.358703Z","shell.execute_reply.started":"2021-07-31T03:27:50.982393Z","shell.execute_reply":"2021-07-31T03:27:59.357498Z"},"trusted":true},"execution_count":2,"outputs":[]},{"cell_type":"code","source":"try:\n    tpu = tf.distribute.cluster_resolver.TPUClusterResolver()  # TPU detection\n    print('Running on TPU ', tpu.cluster_spec().as_dict()['worker'])\nexcept ValueError:\n    raise BaseException('ERROR: Not connected to a TPU runtime; please see the previous cell in this notebook for instructions!')\n\ntf.config.experimental_connect_to_cluster(tpu)\ntf.tpu.experimental.initialize_tpu_system(tpu)\ntpu_strategy = tf.distribute.experimental.TPUStrategy(tpu)","metadata":{"execution":{"iopub.status.busy":"2021-07-31T03:28:04.167088Z","iopub.execute_input":"2021-07-31T03:28:04.167469Z","iopub.status.idle":"2021-07-31T03:28:10.134069Z","shell.execute_reply.started":"2021-07-31T03:28:04.167438Z","shell.execute_reply":"2021-07-31T03:28:10.132942Z"},"trusted":true},"execution_count":3,"outputs":[{"name":"stdout","text":"Running on TPU  ['10.0.0.2:8470']\n","output_type":"stream"}]},{"cell_type":"markdown","source":"# Dataset Creation","metadata":{}},{"cell_type":"code","source":"###### Constants\nFS = 500\nW_LEN = 355\nW_LEN_1_4 = 355 // 4\nW_LEN_3_4 = 3 * (355 // 4)\n\n###### Function to Segment Signals\n\ndef segmentSignals(signal, r_peaks_annot, normalization=True, person_id= None, file_id=None):\n    \n    \"\"\"\n    Segments signals based on the detected R-Peak\n    Args:\n        signal (numpy array): input signal\n        r_peaks_annot (int []): r-peak locations.\n        normalization (bool, optional): apply z-normalization or not? . Defaults to True.\n        person_id ([type], optional): [description]. Defaults to None.\n        file_id ([type], optional): [description]. Defaults to None.\n    Returns:\n            [tuple(numpy array,numpy array)]: segmented signals and refined r-peaks\n    \"\"\"\n    def refine_rpeaks(signal, r_peaks):\n        \"\"\"\n        Refines the detected R-peaks. If the R-peak is slightly shifted, this assigns the \n        highest point R-peak.\n        Args:\n            signal (numpy array): input signal\n            r_peaks (int []): list of detected r-peaks\n        Returns:\n            [numpy array]: refined r-peaks\n        \"\"\"\n        r_peaks2 = np.array(r_peaks)            # make a copy\n        for i in range(len(r_peaks)):\n            r = r_peaks[i]          # current R-peak\n            small_segment = signal[max(0,r-100):min(len(signal),r+100)]         # consider the neighboring segment of R-peak\n            r_peaks2[i] = np.argmax(small_segment) - 100 + r_peaks[i]           # picking the highest point\n            r_peaks2[i] = min(r_peaks2[i],len(signal))                          # the detected R-peak shouldn't be outside the signal\n            r_peaks2[i] = max(r_peaks2[i],0)                                    # checking if it goes before zero    \n        return r_peaks2                     # returning the refined r-peak list\n    \n    segmented_signals = []                      # array containing the segmented beats\n    \n    r_peaks = np.array(r_peaks_annot)\n\n    r_peaks = refine_rpeaks(signal, r_peaks)\n    skip_len = 2 # Parameter to specify number of r_peaks in one signal\n    max_seq_len = 640 # Parameter to specify maximum sequence length\n    \n    for r_curr in range(0,int(r_peaks.shape[0]-(skip_len-1)),skip_len):\n        if ((r_peaks[r_curr]-W_LEN_1_4)<0) or ((r_peaks[r_curr+(skip_len-1)]+W_LEN_3_4)>=len(signal)):           # not enough signal to segment\n            continue\n        segmented_signal = np.array(signal[r_peaks[r_curr]-W_LEN_1_4:r_peaks[r_curr+(skip_len-1)]+W_LEN_3_4])        # segmenting a heartbeat\n        segmented_signal = list(segmented_signal)\n        #print(segmented_signal.shape)\n        \n        if(len(segmented_signal) < 640):\n            for m in range(int(640-len(segmented_signal))): # Zero Padding\n                segmented_signal.append(0)\n        else:\n            segmented_signal = (segmented_signal[:int(max_seq_len)])\n            \n        segmented_signal = np.array(segmented_signal)\n        \n        if(segmented_signal.shape != (640,1)):    \n            segmented_signal = np.reshape(segmented_signal,(640,1))\n            \n        if (normalization):             # Z-score normalization\n            if abs(np.std(segmented_signal))<1e-6:          # flat line ECG, will cause zero division error\n                continue\n            segmented_signal = (segmented_signal - np.mean(segmented_signal)) / np.std(segmented_signal)            \n              \n        #if not np.isnan(segmented_signal).any():                    # checking for nan, this will never happen\n            segmented_signals.append(segmented_signal)\n\n    return segmented_signals,r_peaks           # returning the segmented signals and the refined r-peaks\n\n\n###### Function to Read Records\n\ndef read_rec(rec_path):\n\n    \"\"\" \n    Function to read record and return Segmented Signals\n\n    INPUTS:-\n    1) rec_path : Path of the Record\n\n    OUTPUTS:-\n    1) seg_sigs : Final Segmented Signals\n\n    \"\"\"\n    number_of_peaks = 2 # For extracting the required number of peaks                                    \n    full_rec = (wfdb.rdrecord(rec_path)).p_signal[:,0] # Entire Record - Taking Signal from Lead-1\n\n    f = PchipInterpolator(np.arange(int(full_rec.shape[0])),full_rec) # Fitting Interpolation Function\n    num_samples = int(full_rec.shape[0]) # Total Samples in 1000Hz Signal\n    num_samples_final = int(num_samples*(500/1000))\n    x_samp = (np.arange(num_samples)*(1000/500))[:num_samples_final] # Fixing Interpolation Input Values\n    full_rec_interp = f(x_samp)  # Intepolating Values \n    \n    r_peaks_init = ecg.hamilton_segmenter(full_rec_interp,500)[0] # R-Peak Segmentation and input is the signal frequency of 500Hz in this case\n    final_peak_index = r_peaks_init[int(r_peaks_init.shape[0] - int((r_peaks_init.shape[0]%number_of_peaks)))-1]\n    r_peaks_final = r_peaks_init[:final_peak_index] # Final Number of R_Peaks\n    full_rec_final = full_rec_interp[:int(r_peaks_final[-1]+W_LEN)] # Final Sequence\n    seg_sigs, r_peaks_ref = segmentSignals(full_rec_final,list(r_peaks_final)) # Final Signal Segmentation\n\n    return seg_sigs","metadata":{"execution":{"iopub.status.busy":"2021-07-31T03:28:17.938856Z","iopub.execute_input":"2021-07-31T03:28:17.939265Z","iopub.status.idle":"2021-07-31T03:28:17.963542Z","shell.execute_reply.started":"2021-07-31T03:28:17.939233Z","shell.execute_reply":"2021-07-31T03:28:17.962198Z"},"trusted":true},"execution_count":4,"outputs":[]},{"cell_type":"code","source":"###### Extracting List of the Elements with Two Sessions \ndir = '../input/ptb-dataset/ptb-diagnostic-ecg-database-1.0.0'\ntotal_index = 0\n#subjects_with_two = []\nsubjects = []\n\nfor item in np.sort(os.listdir(dir)):\n    dir_sub = os.path.join(dir,item)\n    if(os.path.isdir(dir_sub)):\n        if(len(os.listdir(dir_sub))//3 >= 2):\n            subjects.append(item)\n    \nprint(subjects)\nprint(len(subjects))","metadata":{"execution":{"iopub.status.busy":"2021-07-31T03:28:29.247797Z","iopub.execute_input":"2021-07-31T03:28:29.248187Z","iopub.status.idle":"2021-07-31T03:28:30.947134Z","shell.execute_reply.started":"2021-07-31T03:28:29.248155Z","shell.execute_reply":"2021-07-31T03:28:30.946201Z"},"trusted":true},"execution_count":5,"outputs":[{"name":"stdout","text":"['patient001', 'patient004', 'patient005', 'patient006', 'patient007', 'patient008', 'patient010', 'patient011', 'patient012', 'patient013', 'patient014', 'patient015', 'patient016', 'patient017', 'patient018', 'patient019', 'patient020', 'patient021', 'patient022', 'patient023', 'patient024', 'patient025', 'patient026', 'patient027', 'patient028', 'patient029', 'patient030', 'patient031', 'patient032', 'patient033', 'patient034', 'patient035', 'patient036', 'patient037', 'patient038', 'patient039', 'patient040', 'patient041', 'patient042', 'patient043', 'patient044', 'patient045', 'patient046', 'patient047', 'patient048', 'patient049', 'patient050', 'patient051', 'patient054', 'patient065', 'patient066', 'patient067', 'patient069', 'patient072', 'patient073', 'patient074', 'patient075', 'patient076', 'patient077', 'patient078', 'patient079', 'patient080', 'patient081', 'patient082', 'patient083', 'patient084', 'patient085', 'patient087', 'patient088', 'patient089', 'patient090', 'patient091', 'patient092', 'patient093', 'patient094', 'patient095', 'patient096', 'patient097', 'patient098', 'patient099', 'patient100', 'patient101', 'patient113', 'patient117', 'patient127', 'patient149', 'patient158', 'patient164', 'patient165', 'patient168', 'patient169', 'patient174', 'patient180', 'patient181', 'patient190', 'patient197', 'patient198', 'patient201', 'patient202', 'patient208', 'patient223', 'patient229', 'patient233', 'patient236', 'patient241', 'patient245', 'patient251', 'patient278', 'patient279', 'patient284', 'patient287', 'patient292', 'patient293']\n113\n","output_type":"stream"}]},{"cell_type":"code","source":"###### Creation of Numpy Arrays - Training Dataset\nmain_dir = '../input/ptb-dataset/ptb-diagnostic-ecg-database-1.0.0'\n\nX_train = []\nX_dev = []\ny_train = []\ny_dev = []\n\ncurrent_index = 0\n\n#for person_index,person_folder in enumerate(list(np.sort(os.listdir(main_dir)))):\n \nfor person_folder in np.sort(subjects):\n    \n    if(current_index <= 89): # Taking 80% of the subjects for training \n    \n        person_folder_path = os.path.join(main_dir,person_folder)\n        person_folder_items = (list(np.sort(os.listdir(person_folder_path))))\n\n        for file_idx in range(0,len(person_folder_items),3):\n            file_path_list = str((os.path.join(person_folder_path,person_folder_items[file_idx])))\n            file_num = file_idx//3\n\n            rec_path = ''\n            for item_index in range(0,(len(file_path_list)-4)):\n                rec_path = rec_path+str(file_path_list[item_index])\n\n            seg_signal_current = read_rec(rec_path) # Extracting Records\n\n            if(file_num == 0):\n                for k in range(len(seg_signal_current)):\n                    X_train.append(seg_signal_current[k])\n                    y_train.append(current_index)\n\n            if(file_num == 1):\n                for k in range(len(seg_signal_current)):\n                    X_dev.append(seg_signal_current[k])\n                    y_dev.append(current_index)\n                    \n        current_index = current_index + 1\n        print('Processed for Person - '+str(current_index))\n    \n###### Shuffling Numpy Arrays\nX_train,y_train = shuffle(X_train,y_train)\nX_dev,y_dev = shuffle(X_dev,y_dev)\n\nprint(np.array(X_train).shape)\nprint(np.array(y_train).shape)\nprint(np.array(X_dev).shape)\nprint(np.array(y_dev).shape)","metadata":{"execution":{"iopub.status.busy":"2021-07-31T03:28:53.197366Z","iopub.execute_input":"2021-07-31T03:28:53.197893Z","iopub.status.idle":"2021-07-31T03:30:25.022763Z","shell.execute_reply.started":"2021-07-31T03:28:53.197858Z","shell.execute_reply":"2021-07-31T03:30:25.021823Z"},"trusted":true},"execution_count":6,"outputs":[{"name":"stdout","text":"Processed for Person - 1\nProcessed for Person - 2\nProcessed for Person - 3\nProcessed for Person - 4\nProcessed for Person - 5\nProcessed for Person - 6\nProcessed for Person - 7\nProcessed for Person - 8\nProcessed for Person - 9\nProcessed for Person - 10\nProcessed for Person - 11\nProcessed for Person - 12\nProcessed for Person - 13\nProcessed for Person - 14\nProcessed for Person - 15\nProcessed for Person - 16\nProcessed for Person - 17\nProcessed for Person - 18\nProcessed for Person - 19\nProcessed for Person - 20\nProcessed for Person - 21\nProcessed for Person - 22\nProcessed for Person - 23\nProcessed for Person - 24\nProcessed for Person - 25\nProcessed for Person - 26\nProcessed for Person - 27\nProcessed for Person - 28\nProcessed for Person - 29\nProcessed for Person - 30\nProcessed for Person - 31\nProcessed for Person - 32\nProcessed for Person - 33\nProcessed for Person - 34\nProcessed for Person - 35\nProcessed for Person - 36\nProcessed for Person - 37\nProcessed for Person - 38\nProcessed for Person - 39\nProcessed for Person - 40\nProcessed for Person - 41\nProcessed for Person - 42\nProcessed for Person - 43\nProcessed for Person - 44\nProcessed for Person - 45\nProcessed for Person - 46\nProcessed for Person - 47\nProcessed for Person - 48\nProcessed for Person - 49\nProcessed for Person - 50\nProcessed for Person - 51\nProcessed for Person - 52\nProcessed for Person - 53\nProcessed for Person - 54\nProcessed for Person - 55\nProcessed for Person - 56\nProcessed for Person - 57\nProcessed for Person - 58\nProcessed for Person - 59\nProcessed for Person - 60\nProcessed for Person - 61\nProcessed for Person - 62\nProcessed for Person - 63\nProcessed for Person - 64\nProcessed for Person - 65\nProcessed for Person - 66\nProcessed for Person - 67\nProcessed for Person - 68\nProcessed for Person - 69\nProcessed for Person - 70\nProcessed for Person - 71\nProcessed for Person - 72\nProcessed for Person - 73\nProcessed for Person - 74\nProcessed for Person - 75\nProcessed for Person - 76\nProcessed for Person - 77\nProcessed for Person - 78\nProcessed for Person - 79\nProcessed for Person - 80\nProcessed for Person - 81\nProcessed for Person - 82\nProcessed for Person - 83\nProcessed for Person - 84\nProcessed for Person - 85\nProcessed for Person - 86\nProcessed for Person - 87\nProcessed for Person - 88\nProcessed for Person - 89\nProcessed for Person - 90\n(6919, 640, 1)\n(6919,)\n(6401, 640, 1)\n(6401,)\n","output_type":"stream"}]},{"cell_type":"code","source":"###### Creation of Numpy Arrays - Testing Dataset\nmain_dir = '../input/ptb-dataset/ptb-diagnostic-ecg-database-1.0.0'\n\nX_train = []\nX_dev = []\ny_train = []\ny_dev = []\n\ncurrent_index = 0\n\n#for person_index,person_folder in enumerate(list(np.sort(os.listdir(main_dir)))):\n \nfor person_folder in np.sort(subjects):\n    \n    if(current_index > 89):\n    \n        person_folder_path = os.path.join(main_dir,person_folder)\n        person_folder_items = (list(np.sort(os.listdir(person_folder_path))))\n\n        for file_idx in range(0,len(person_folder_items),3):\n            file_path_list = str((os.path.join(person_folder_path,person_folder_items[file_idx])))\n            file_num = file_idx//3\n\n            rec_path = ''\n            for item_index in range(0,(len(file_path_list)-4)):\n                rec_path = rec_path+str(file_path_list[item_index])\n\n            seg_signal_current = read_rec(rec_path) # Extracting Records\n\n            if(file_num == 0):\n                for k in range(len(seg_signal_current)):\n                    X_train.append(seg_signal_current[k])\n                    y_train.append(current_index - 90) # Subtracting 90 to generate categorical labels\n\n            if(file_num == 1):\n                for k in range(len(seg_signal_current)):\n                    X_dev.append(seg_signal_current[k])\n                    y_dev.append(current_index - 90) # Subtracting 90 to generate categorical labels\n\n    current_index = current_index+1\n    print('Processed for Person - '+str(current_index))\n    \n###### Shuffling Numpy Arrays\nX_train,y_train = shuffle(X_train,y_train)\nX_dev,y_dev = shuffle(X_dev,y_dev)\n\nprint(np.array(X_train).shape)\nprint(np.array(y_train).shape)\nprint(np.array(X_dev).shape)\nprint(np.array(y_dev).shape)\n\nprint(np.max(y_train))\nprint(np.min(y_dev))","metadata":{"execution":{"iopub.status.busy":"2021-07-31T04:08:53.567764Z","iopub.execute_input":"2021-07-31T04:08:53.568176Z","iopub.status.idle":"2021-07-31T04:09:08.848572Z","shell.execute_reply.started":"2021-07-31T04:08:53.568141Z","shell.execute_reply":"2021-07-31T04:09:08.847173Z"},"trusted":true},"execution_count":17,"outputs":[{"name":"stdout","text":"Processed for Person - 1\nProcessed for Person - 2\nProcessed for Person - 3\nProcessed for Person - 4\nProcessed for Person - 5\nProcessed for Person - 6\nProcessed for Person - 7\nProcessed for Person - 8\nProcessed for Person - 9\nProcessed for Person - 10\nProcessed for Person - 11\nProcessed for Person - 12\nProcessed for Person - 13\nProcessed for Person - 14\nProcessed for Person - 15\nProcessed for Person - 16\nProcessed for Person - 17\nProcessed for Person - 18\nProcessed for Person - 19\nProcessed for Person - 20\nProcessed for Person - 21\nProcessed for Person - 22\nProcessed for Person - 23\nProcessed for Person - 24\nProcessed for Person - 25\nProcessed for Person - 26\nProcessed for Person - 27\nProcessed for Person - 28\nProcessed for Person - 29\nProcessed for Person - 30\nProcessed for Person - 31\nProcessed for Person - 32\nProcessed for Person - 33\nProcessed for Person - 34\nProcessed for Person - 35\nProcessed for Person - 36\nProcessed for Person - 37\nProcessed for Person - 38\nProcessed for Person - 39\nProcessed for Person - 40\nProcessed for Person - 41\nProcessed for Person - 42\nProcessed for Person - 43\nProcessed for Person - 44\nProcessed for Person - 45\nProcessed for Person - 46\nProcessed for Person - 47\nProcessed for Person - 48\nProcessed for Person - 49\nProcessed for Person - 50\nProcessed for Person - 51\nProcessed for Person - 52\nProcessed for Person - 53\nProcessed for Person - 54\nProcessed for Person - 55\nProcessed for Person - 56\nProcessed for Person - 57\nProcessed for Person - 58\nProcessed for Person - 59\nProcessed for Person - 60\nProcessed for Person - 61\nProcessed for Person - 62\nProcessed for Person - 63\nProcessed for Person - 64\nProcessed for Person - 65\nProcessed for Person - 66\nProcessed for Person - 67\nProcessed for Person - 68\nProcessed for Person - 69\nProcessed for Person - 70\nProcessed for Person - 71\nProcessed for Person - 72\nProcessed for Person - 73\nProcessed for Person - 74\nProcessed for Person - 75\nProcessed for Person - 76\nProcessed for Person - 77\nProcessed for Person - 78\nProcessed for Person - 79\nProcessed for Person - 80\nProcessed for Person - 81\nProcessed for Person - 82\nProcessed for Person - 83\nProcessed for Person - 84\nProcessed for Person - 85\nProcessed for Person - 86\nProcessed for Person - 87\nProcessed for Person - 88\nProcessed for Person - 89\nProcessed for Person - 90\nProcessed for Person - 91\nProcessed for Person - 92\nProcessed for Person - 93\nProcessed for Person - 94\nProcessed for Person - 95\nProcessed for Person - 96\nProcessed for Person - 97\nProcessed for Person - 98\nProcessed for Person - 99\nProcessed for Person - 100\nProcessed for Person - 101\nProcessed for Person - 102\nProcessed for Person - 103\nProcessed for Person - 104\nProcessed for Person - 105\nProcessed for Person - 106\nProcessed for Person - 107\nProcessed for Person - 108\nProcessed for Person - 109\nProcessed for Person - 110\nProcessed for Person - 111\nProcessed for Person - 112\nProcessed for Person - 113\n(1478, 640, 1)\n(1478,)\n(1489, 640, 1)\n(1489,)\n22\n0\n","output_type":"stream"}]},{"cell_type":"code","source":"###### Saving Numpy Arrays\nnp.savez_compressed('X_train_PTB_test_OSV_Baseline.npz',np.array(X_train))\nnp.savez_compressed('y_train_PTB_test_OSV_Baseline.npz',np.array(y_train))\nnp.savez_compressed('X_dev_PTB_test_OSV_Baseline.npz',np.array(X_dev))\nnp.savez_compressed('y_dev_PTB_test_OSV_Baseline.npz',np.array(y_dev)) ","metadata":{"execution":{"iopub.status.busy":"2021-07-31T04:09:59.082512Z","iopub.execute_input":"2021-07-31T04:09:59.082892Z","iopub.status.idle":"2021-07-31T04:09:59.701088Z","shell.execute_reply.started":"2021-07-31T04:09:59.082861Z","shell.execute_reply":"2021-07-31T04:09:59.700297Z"},"trusted":true},"execution_count":19,"outputs":[]},{"cell_type":"code","source":"##### Loading Dataset\nX_train = np.array(np.load('./X_train_PTB_test_OSV_Baseline.npz',allow_pickle=True)['arr_0'],dtype=np.float16)\nX_dev = np.array(np.load('./X_dev_PTB_test_OSV_Baseline.npz',allow_pickle=True)['arr_0'],dtype=np.float16)\ny_train = np.load('./y_train_PTB_test_OSV_Baseline.npz',allow_pickle=True)['arr_0']\ny_dev = np.load('./y_dev_PTB_test_OSV_Baseline.npz',allow_pickle=True)['arr_0']","metadata":{"execution":{"iopub.status.busy":"2021-07-31T04:10:03.267065Z","iopub.execute_input":"2021-07-31T04:10:03.267427Z","iopub.status.idle":"2021-07-31T04:10:03.379745Z","shell.execute_reply.started":"2021-07-31T04:10:03.267398Z","shell.execute_reply":"2021-07-31T04:10:03.378679Z"},"trusted":true},"execution_count":20,"outputs":[]},{"cell_type":"code","source":"##### Converting Labels to Categorical Format\ny_train_ohot = tf.keras.utils.to_categorical(y_train)\ny_dev_ohot = tf.keras.utils.to_categorical(y_dev)","metadata":{"execution":{"iopub.status.busy":"2021-07-31T04:10:05.667877Z","iopub.execute_input":"2021-07-31T04:10:05.668451Z","iopub.status.idle":"2021-07-31T04:10:05.674749Z","shell.execute_reply.started":"2021-07-31T04:10:05.668398Z","shell.execute_reply":"2021-07-31T04:10:05.673588Z"},"trusted":true},"execution_count":21,"outputs":[]},{"cell_type":"code","source":"##### Testing \nprint(y_dev[:10])\n#print(np.array(X_train).shape)\n#print(np.array(y_train).shape)\n#print(np.array(X_dev).shape)\n#print(np.array(y_dev).shape)\n\n#for i in range(2):\n#    plt.plot(np.arange(640),X_train[i])\n#    plt.show()","metadata":{"execution":{"iopub.status.busy":"2021-07-31T04:10:07.907270Z","iopub.execute_input":"2021-07-31T04:10:07.907629Z","iopub.status.idle":"2021-07-31T04:10:07.914626Z","shell.execute_reply.started":"2021-07-31T04:10:07.907600Z","shell.execute_reply":"2021-07-31T04:10:07.913183Z"},"trusted":true},"execution_count":22,"outputs":[{"name":"stdout","text":"[17 12  6 13  0 13 19  0  7  6]\n","output_type":"stream"}]},{"cell_type":"markdown","source":"# Model Making","metadata":{}},{"cell_type":"markdown","source":"## Self-Calibrated Convolution","metadata":{}},{"cell_type":"code","source":"###### Model Development : Self-Calibrated \n\n##### Defining Self-Calibrated Block\n\nrate_regularizer = 1e-5\nclass self_cal_Conv1D(tf.keras.layers.Layer):\n\n    \"\"\" \n    This is inherited class from keras.layers and shall be instatition of self-calibrated convolutions\n    \"\"\"\n    \n    def __init__(self,num_filters,kernel_size,num_features):\n    \n        #### Defining Essentials\n        super().__init__()\n        self.num_filters = num_filters\n        self.kernel_size = kernel_size\n        self.num_features = num_features # Number of Channels in Input\n\n        #### Defining Layers\n        self.conv2 = tf.keras.layers.Conv1D(self.num_features/2,self.kernel_size,padding='same',kernel_regularizer=tf.keras.regularizers.l2(rate_regularizer),dtype='float32',activation='relu')\n        self.conv3 = tf.keras.layers.Conv1D(self.num_features/2,self.kernel_size,padding='same',kernel_regularizer=tf.keras.regularizers.l2(rate_regularizer),dtype='float32',activation='relu')\n        self.conv4 = tf.keras.layers.Conv1D(self.num_filters/2,self.kernel_size,padding='same',activation='relu',kernel_regularizer=tf.keras.regularizers.l2(rate_regularizer),dtype='float32')\n        self.conv1 = tf.keras.layers.Conv1D(self.num_filters/2,self.kernel_size,padding='same',activation='relu',kernel_regularizer=tf.keras.regularizers.l2(rate_regularizer),dtype='float32')\n        self.upsample = tf.keras.layers.Conv1DTranspose(filters=int(self.num_features/2),kernel_size=4,strides=4)\n        #self.attention_layer = tf.keras.layers.Attention()\n        #self.lstm = tf.keras.layers.LSTM(int(self.num_features/2),return_sequences=True)\n        #self.layernorm = tf.keras.layers.LayerNormalization()\n    \n    def get_config(self):\n\n        config = super().get_config().copy()\n        config.update({\n            'num_filters': self.num_filters,\n            'kernel_size': self.kernel_size,\n            'num_features': self.num_features\n        })\n        return config\n    \n    \n    def call(self,X):\n       \n        \"\"\"\n          INPUTS : 1) X - Input Tensor of shape (batch_size,sequence_length,num_features)\n          OUTPUTS : 1) X - Output Tensor of shape (batch_size,sequence_length,num_features)\n        \"\"\"\n        \n        #### Dimension Extraction\n        b_s = (X.shape)[0] \n        seq_len = (X.shape)[1]\n        num_features = (X.shape)[2]\n        \n        #### Channel-Wise Division\n        X_attention = X[:,:,0:int(self.num_features/2)]\n        X_global = X[:,:,int(self.num_features/2):]\n        \n        #### Self Calibration Block\n\n        ### Local Feature Detection\n\n        ## Down-Sampling\n        #x1 = X_attention[:,0:int(seq_len/5),:]\n        #x2 = X_attention[:,int(seq_len/5):int(seq_len*(2/5)),:]\n        #x3 = X_attention[:,int(seq_len*(2/5)):int(seq_len*(3/5)),:]\n        #x4 = X_attention[:,int(seq_len*(3/5)):int(seq_len*(4/5)),:]\n        #x5 = X_attention[:,int(seq_len*(4/5)):seq_len,:]\n        x_down_sampled = tf.keras.layers.AveragePooling1D(pool_size=4,strides=4)(X_attention)\n        \n        ## Convoluting Down Sampled Sequence \n        #x1 = self.conv2(x1)\n        #x2 = self.conv2(x2)\n        #x3 = self.conv2(x3)\n        #x4 = self.conv2(x4)\n        #x5 = self.conv2(x5)\n        x_down_conv = self.conv2(x_down_sampled)\n        #x_down_feature = self.attention_layer([x_down_sampled,x_down_sampled])\n        #x_down_feature = self.lstm(x_down_sampled)\n        #x_down_feature = self.layernorm(x_down_feature)\n        \n        ## Up-Sampling\n        x_down_upsampled = self.upsample(x_down_conv)   \n        #X_local_upsampled = tf.keras.layers.concatenate([x1,x2,x3,x4,x5],axis=1)\n\n        ## Local-CAM\n        X_local = X_attention + x_down_upsampled  #X_local_upsampled\n\n        ## Local Importance \n        X_2 = tf.keras.activations.sigmoid(X_local)\n\n        ### Self-Calibration\n\n        ## Global Convolution\n        X_3 = self.conv3(X_attention)\n\n        ## Attention Determination\n        X_attention = tf.math.multiply(X_2,X_3)\n\n        #### Self-Calibration Feature Extraction\n        X_4 = self.conv4(X_attention)\n\n        #### Normal Feature Extraction\n        X_1 = self.conv1(X_global)\n\n        #### Concatenating and Returning Output\n        return (tf.keras.layers.concatenate([X_1,X_4],axis=2))","metadata":{"execution":{"iopub.status.busy":"2021-07-31T03:32:18.824694Z","iopub.execute_input":"2021-07-31T03:32:18.825095Z","iopub.status.idle":"2021-07-31T03:32:18.843743Z","shell.execute_reply.started":"2021-07-31T03:32:18.825054Z","shell.execute_reply":"2021-07-31T03:32:18.842455Z"},"trusted":true},"execution_count":11,"outputs":[]},{"cell_type":"markdown","source":"## Transformer","metadata":{}},{"cell_type":"code","source":"def get_angles(pos, i, d_model):\n    angle_rates = 1 / np.power(10000, (2 * (i//2)) / np.float32(d_model))\n    return pos * angle_rates\n\ndef positional_encoding(position, d_model):\n    angle_rads = get_angles(np.arange(position)[:, np.newaxis],\n                          np.arange(d_model)[np.newaxis, :],\n                          d_model)\n  \n  # apply sin to even indices in the array; 2i\n    angle_rads[:, 0::2] = np.sin(angle_rads[:, 0::2])\n  \n  # apply cos to odd indices in the array; 2i+1\n    angle_rads[:, 1::2] = np.cos(angle_rads[:, 1::2])\n    \n    pos_encoding = angle_rads[np.newaxis, ...]\n    \n    return tf.cast(pos_encoding, dtype=tf.float32)\n\ndef create_padding_mask(seq):\n    seq = tf.cast(tf.math.equal(seq, 0), tf.float32)\n  \n    # add extra dimensions to add the padding\n    # to the attention logits. \n    return seq[:, tf.newaxis, tf.newaxis, :]  # (batch_size, 1, 1, seq_len)\n\ndef scaled_dot_product_attention(q, k, v, mask):\n    \"\"\"Calculate the attention weights.\n    q, k, v must have matching leading dimensions.\n    k, v must have matching penultimate dimension, i.e.: seq_len_k = seq_len_v.\n    The mask has different shapes depending on its type(padding or look ahead) \n    but it must be broadcastable for addition.\n\n    Args:\n    q: query shape == (..., seq_len_q, depth)\n    k: key shape == (..., seq_len_k, depth)\n    v: value shape == (..., seq_len_v, depth_v)\n    mask: Float tensor with shape broadcastable \n          to (..., seq_len_q, seq_len_k). Defaults to None.\n\n    Returns:\n    output, attention_weights\n    \"\"\"\n\n    matmul_qk = tf.matmul(q, k, transpose_b=True)  # (..., seq_len_q, seq_len_k)\n  \n    # scale matmul_qk\n    dk = tf.cast(tf.shape(k)[-1], tf.float32)\n    scaled_attention_logits = matmul_qk / tf.math.sqrt(dk)\n\n    # add the mask to the scaled tensor.\n    if mask is not None:\n        scaled_attention_logits += (mask * -1e9)  \n\n    # softmax is normalized on the last axis (seq_len_k) so that the scores\n    # add up to 1.\n    attention_weights = tf.nn.softmax(scaled_attention_logits, axis=-1)  # (..., seq_len_q, seq_len_k)\n\n    output = tf.matmul(attention_weights, v)  # (..., seq_len_q, depth_v)\n\n    return output, attention_weights\n\nclass MultiHeadAttention(tf.keras.layers.Layer):\n    \n    def __init__(self, d_model, num_heads):\n        super(MultiHeadAttention, self).__init__()\n        self.num_heads = num_heads\n        self.d_model = d_model\n\n        assert d_model % self.num_heads == 0\n\n        self.depth = d_model // self.num_heads\n\n        self.wq = tf.keras.layers.Dense(d_model)\n        self.wk = tf.keras.layers.Dense(d_model)\n        self.wv = tf.keras.layers.Dense(d_model)\n\n        self.dense = tf.keras.layers.Dense(d_model)\n\n    def get_config(self):\n        config = super(MultiHeadAttention, self).get_config().copy()\n        config.update({\n            'd_model': self.d_model,\n            'num_heads':self.num_heads\n        })\n        \n    def split_heads(self, x, batch_size):\n        \n        \"\"\"Split the last dimension into (num_heads, depth).\n        Transpose the result such that the shape is (batch_size, num_heads, seq_len, depth)\n        \"\"\"\n        x = tf.reshape(x, (batch_size, -1, self.num_heads, self.depth))\n        return tf.transpose(x, perm=[0, 2, 1, 3])\n    \n    def call(self, v, k, q, mask):\n        batch_size = tf.shape(q)[0]\n\n        q = self.wq(q)  # (batch_size, seq_len, d_model)\n        k = self.wk(k)  # (batch_size, seq_len, d_model)\n        v = self.wv(v)  # (batch_size, seq_len, d_model)\n\n        q = self.split_heads(q, batch_size)  # (batch_size, num_heads, seq_len_q, depth)\n        k = self.split_heads(k, batch_size)  # (batch_size, num_heads, seq_len_k, depth)\n        v = self.split_heads(v, batch_size)  # (batch_size, num_heads, seq_len_v, depth)\n\n        # scaled_attention.shape == (batch_size, num_heads, seq_len_q, depth)\n        # attention_weights.shape == (batch_size, num_heads, seq_len_q, seq_len_k)\n        scaled_attention, attention_weights = scaled_dot_product_attention(\n            q, k, v, mask)\n\n        scaled_attention = tf.transpose(scaled_attention, perm=[0, 2, 1, 3])  # (batch_size, seq_len_q, num_heads, depth)\n\n        concat_attention = tf.reshape(scaled_attention, \n                                      (batch_size, -1, self.d_model))  # (batch_size, seq_len_q, d_model)\n\n        output = self.dense(concat_attention)  # (batch_size, seq_len_q, d_model)\n\n        return output, attention_weights\n\ndef point_wise_feed_forward_network(d_model, dff):\n    return tf.keras.Sequential([\n      tf.keras.layers.Dense(dff, activation='relu'),  # (batch_size, seq_len, dff)\n      tf.keras.layers.Dense(d_model)  # (batch_size, seq_len, d_model)\n  ])\n\nclass Encoder(tf.keras.layers.Layer):\n    def __init__(self, num_layers, d_model, num_heads, dff,\n               maximum_position_encoding, rate=0.1):\n        super(Encoder, self).__init__()\n\n        self.d_model = d_model\n        self.num_layers = num_layers\n        self.num_heads = num_heads\n        self.dff = dff\n        self.maximum_position_encoding = maximum_position_encoding\n        self.rate = rate\n\n        #self.embedding = tf.keras.layers.Embedding(input_vocab_size, d_model)\n        self.pos_encoding = positional_encoding(maximum_position_encoding, \n                                                self.d_model)\n\n\n        self.enc_layers = [EncoderLayer(d_model, num_heads, dff, rate) \n                           for _ in range(num_layers)]\n\n        self.dropout = tf.keras.layers.Dropout(rate)\n        \n    def get_config(self):\n        config = super(Encoder, self).get_config().copy()\n        config.update({\n            'num_layers': self.num_layers,\n            'd_model': self.d_model,\n            'num_heads':self.num_heads,\n            'dff':self.dff,\n            'maximum_position_encoding':self.maximum_position_encoding,\n            'rate':self.rate  \n        })\n        \n    def call(self, x, training, mask):\n\n        seq_len = tf.shape(x)[1]\n\n        # adding embedding and position encoding.\n        #x = self.embedding(x)  # (batch_size, input_seq_len, d_model)\n        x *= tf.math.sqrt(tf.cast(self.d_model, tf.float32))\n        x += self.pos_encoding[:, :seq_len, :]\n\n        x = self.dropout(x, training=training)         \n\n        for i in range(self.num_layers):\n            x = self.enc_layers[i](x, training, mask)\n\n        return x  # (batch_size, input_seq_len, d_model)\n\nclass EncoderLayer(tf.keras.layers.Layer):\n    def __init__(self, d_model, num_heads, dff, rate=0.1):\n        super(EncoderLayer, self).__init__()\n        \n        self.d_model = d_model\n        self.num_heads = num_heads\n        self.dff = dff\n        self.rate = rate\n\n        self.mha = MultiHeadAttention(d_model, num_heads)\n        self.ffn = point_wise_feed_forward_network(d_model, dff)\n\n        self.layernorm1 = tf.keras.layers.LayerNormalization(epsilon=1e-6)\n        self.layernorm2 = tf.keras.layers.LayerNormalization(epsilon=1e-6)\n\n        self.dropout1 = tf.keras.layers.Dropout(rate)\n        self.dropout2 = tf.keras.layers.Dropout(rate)\n        \n    def get_config(self):\n        config = super(EncoderLayer, self).get_config().copy()\n        config.update({\n            'd_model': self.d_model,\n            'num_heads':self.num_heads,\n            'dff':self.dff,\n            'rate':self.rate  \n        })\n        \n    def call(self, x, training, mask):\n\n        attn_output, _ = self.mha(x, x, x, mask)  # (batch_size, input_seq_len, d_model)\n        attn_output = self.dropout1(attn_output, training=training)\n        out1 = self.layernorm1(x + attn_output)  # (batch_size, input_seq_len, d_model)\n\n        ffn_output = self.ffn(out1)  # (batch_size, input_seq_len, d_model)\n        ffn_output = self.dropout2(ffn_output, training=training)\n        out2 = self.layernorm2(out1 + ffn_output)  # (batch_size, input_seq_len, d_model)\n    \n        return out2\n    \nclass Transformer(tf.keras.Model):\n    def __init__(self, num_layers, d_model, num_heads, dff, \n                 pe_input, rate=0.1):\n        super(Transformer, self).__init__()\n        \n        self.num_layers = num_layers\n        self.d_model = d_model\n        self.num_heads = num_heads\n        self.dff = dff\n        self.pe_input = pe_input\n        self.rate = rate\n        \n        self.encoder = Encoder(num_layers, d_model, num_heads, dff, \n                                pe_input, rate)\n        \n    def get_config(self):\n        config = super(Transformer,self).get_config().copy()\n        config.update({\n            'num_layers': self.num_layers,\n            'd_model': self.d_model,\n            'num_heads':self.num_heads,\n            'dff':self.dff,\n            'pe_input':self.pe_input,\n            'rate':self.rate  \n        })\n    \n    def call(self, inp, training, enc_padding_mask):\n        return self.encoder(inp, training, enc_padding_mask)","metadata":{"execution":{"iopub.status.busy":"2021-07-31T03:32:27.496641Z","iopub.execute_input":"2021-07-31T03:32:27.497000Z","iopub.status.idle":"2021-07-31T03:32:27.543242Z","shell.execute_reply.started":"2021-07-31T03:32:27.496971Z","shell.execute_reply":"2021-07-31T03:32:27.541974Z"},"trusted":true},"execution_count":12,"outputs":[]},{"cell_type":"markdown","source":"## ArcFace Loss","metadata":{}},{"cell_type":"code","source":"class ArcFace(tf.keras.layers.Layer):\n    \n    def __init__(self, n_classes, s, m,regularizer):\n        super().__init__()\n        self.n_classes = n_classes\n        self.s = s\n        self.m = m\n        self.regularizer = tf.keras.regularizers.get(regularizer)\n\n    def get_config(self):\n\n        config = super().get_config().copy()\n        config.update({\n            'n_classes': self.n_classes,\n            's': self.s,\n            'm': self.m,\n            'regularizer': self.regularizer\n        })\n        return config\n\n    def build(self, input_shape):\n        super(ArcFace, self).build(input_shape[0])\n        self.W = self.add_weight(name='W',\n                                shape=(input_shape[0][-1], self.n_classes),\n                                initializer='glorot_uniform',\n                                trainable=True\n                                )\n\n    def call(self, inputs):\n        x, y = inputs\n        c = tf.keras.backend.shape(x)[-1]\n        # normalize feature\n        x = tf.nn.l2_normalize(x, axis=1)\n        # normalize weights\n        W = tf.nn.l2_normalize(self.W, axis=0)\n        # dot product\n        logits = x @ W\n        # add margin\n        # clip logits to prevent zero division when backward\n        theta = tf.acos(tf.keras.backend.clip(logits, -1.0 + tf.keras.backend.epsilon(), 1.0 - tf.keras.backend.epsilon()))\n        target_logits = tf.cos(theta + self.m)\n        # sin = tf.sqrt(1 - logits**2)\n        # cos_m = tf.cos(logits)\n        # sin_m = tf.sin(logits)\n        # target_logits = logits * cos_m - sin * sin_m\n        #\n        logits = logits * (1 - y) + target_logits * y\n        # feature re-scale\n        logits *= self.s\n        out = tf.nn.softmax(logits)    \n        return out\n\n    def compute_output_shape(self, input_shape):\n        return (None, self.n_classes)","metadata":{"execution":{"iopub.status.busy":"2021-07-31T03:32:36.647320Z","iopub.execute_input":"2021-07-31T03:32:36.647692Z","iopub.status.idle":"2021-07-31T03:32:36.660922Z","shell.execute_reply.started":"2021-07-31T03:32:36.647660Z","shell.execute_reply":"2021-07-31T03:32:36.659776Z"},"trusted":true},"execution_count":13,"outputs":[]},{"cell_type":"markdown","source":"# Model Training","metadata":{}},{"cell_type":"code","source":"####### Phase-1 Models\n###### Defining Architecture\n\nwith tpu_strategy.scope():\n\n    ##### SC_Module \n\n    #### Defining Hyperparameters\n    num_layers = 2\n    d_model = 512\n    num_heads = 8\n    dff = 1024\n    max_seq_len = 640 #X_train.shape[1]\n    pe_input = 160\n    rate = 0.5\n    num_features = 1\n    num_classes = 23\n\n    #### Defining Layers\n    Input_layer = tf.keras.layers.Input(shape=(max_seq_len,num_features))\n    self_conv1 = self_cal_Conv1D(128,15,128)\n    self_conv2 = self_cal_Conv1D(128,20,128) # Newly Added\n    self_conv3 = self_cal_Conv1D(256,15,128)\n    self_conv4 = self_cal_Conv1D(256,20,256) # Newly Added\n    self_conv5 = self_cal_Conv1D(512,15,256)\n    self_conv6 = self_cal_Conv1D(512,20,512) # Newly Added\n    self_conv7 = self_cal_Conv1D(1024,15,512)\n    self_conv8 = self_cal_Conv1D(1024,20,1024) # Newly Added\n    conv_initial = tf.keras.layers.Conv1D(32,15,padding='same',activation='relu')\n    conv_second = tf.keras.layers.Conv1D(64,15,padding='same',activation='relu')\n    conv_third = tf.keras.layers.Conv1D(128,15,padding='same',activation='relu')\n    #lstm1 = tf.keras.layers.Bidirectional(tf.keras.layers.LSTM(128,activation='tanh',return_sequences=True),merge_mode='ave')\n    transform_1 = tf.keras.layers.Conv1D(128,3,padding='same',kernel_initializer='lecun_normal', activation='selu')\n    transform_2 = tf.keras.layers.Conv1D(256,3,padding='same',kernel_initializer='lecun_normal', activation='selu')\n    transform_3 = tf.keras.layers.Conv1D(512,3,padding='same',kernel_initializer='lecun_normal', activation='selu')\n    transform_4 = tf.keras.layers.Conv1D(1024,3,padding='same',kernel_initializer='lecun_normal', activation='selu')\n    transformer = Transformer(num_layers,d_model,num_heads,dff,pe_input,rate)\n    gap_layer = tf.keras.layers.GlobalAveragePooling1D()\n    arc_logit_layer = ArcFace(23,30.0,0.3,tf.keras.regularizers.l2(1e-4))\n\n    #### Defining Architecture\n    ### Input Layer\n    Inputs = Input_layer\n    Input_Labels = tf.keras.layers.Input(shape=(num_classes,))\n\n    ### Initial Convolutional Layers\n    conv_initial = conv_initial(Inputs)\n    #conv_initial = tf.keras.layers.LayerNormalization()(conv_initial)\n    #conv_initial = tf.keras.layers.MaxPool1D(pool_size=2,strides=2)(conv_initial)     \n    #conv_initial = tf.keras.layers.Add()([conv_initial,Inputs])\n    \n    conv_second = conv_second(conv_initial)\n    #conv_second = tf.keras.layers.LayerNormalization()(conv_second)\n    #conv_second = tf.keras.layers.MaxPool1D(pool_size=2,strides=2)(conv_second)\n    #conv_second = tf.keras.layers.Add()([conv_second,conv_initial])\n    #conv_second = tf.keras.layers.concatenate(axis=2)([conv_initial,conv_second])\n    \n    conv_third = conv_third(conv_second)\n    #conv_third = tf.keras.layers.LayerNormalization()(conv_third)\n    #conv_third = tf.keras.layers.MaxPool1D(pool_size=2,strides=2)(conv_third)\n    #mask = tf.keras.layers.MaxPool1D(pool_size=2,strides=2)(Inputs)\n    #conv_third = tf.keras.layers.Add()([conv_third,conv_second])\n    #conv_third = tf.keras.layers.concatenate(axis=2)([conv_initial,conv_second,conv_third])\n    #conv_third = lstm1(conv_second)\n    #conv_third = tf.keras.layers.Attention()([conv_third,conv_third])\n    \n    ### 1st Residual Block\n    transform_1 = transform_1(conv_third)\n    conv1 = self_conv1(conv_third)\n    #conv1 = tf.keras.layers.AlphaDropout(rate=0.2)(conv1)\n    conv2 = self_conv2(conv1)\n    #conv2 = tf.keras.layers.AlphaDropout(rate=0.2)(conv2)\n    conv2 = tf.keras.layers.Add()([conv2,transform_1])\n    #conv2 = tf.keras.layers.LayerNormalization()(conv2)\n    conv2 = tf.keras.layers.MaxPool1D(pool_size=2,strides=2)(conv2)\n    #mask = tf.keras.layers.MaxPool1D(pool_size=2,strides=2)(mask)    \n\n    ### 2nd Residual Block\n    #conv_third = tf.keras.layers.Attention()([conv_third,conv_third])\n    transform_2 = transform_2(conv2)\n    conv3 = self_conv3(conv2)\n    #conv3 = tf.keras.layers.AlphaDropout(rate=0.2)(conv3)\n    conv4 = self_conv4(conv3)\n    #conv4 = tf.keras.layers.AlphaDropout(rate=0.2)(conv4)\n    conv4 = tf.keras.layers.Add()([conv4,transform_2])\n    #conv4 = tf.keras.layers.LayerNormalization()(conv4)\n    conv4 = tf.keras.layers.MaxPool1D(pool_size=2,strides=2)(conv4)\n    #mask = tf.keras.layers.MaxPool1D(pool_size=2,strides=2)(mask)\n\n    ### 3rd Residual Block\n    transform_3 = transform_3(conv4)\n    conv5 = self_conv5(conv4)\n    #conv5 = tf.keras.layers.AlphaDropout(rate=0.2)(conv5)\n    conv6 = self_conv6(conv5)\n    #conv6 = tf.keras.layers.AlphaDropout(rate=0.2)(conv6)\n    conv6 = tf.keras.layers.Add()([conv6,transform_3])\n    #conv6 = tf.keras.layers.LayerNormalization()(conv6)\n    #conv6 = tf.keras.layers.MaxPool1D(pool_size=2,strides=2)(conv6)\n\n    ### 4th Residual Block\n    #transform_4 = transform_4(conv6)\n    #conv7 = self_conv7(conv6)\n    #conv8 = self_conv8(conv7)\n    #conv8 = tf.keras.layers.Add()([conv8,transform_4])\n\n    ### Transformer\n    ## Wide-Head Attention Model\n    #tx_embedding = tf.keras.layers.Lambda(PE_Layer)(Inputs)\n    #tx_embedding = tf.keras.layers.Dropout(rate)(tx_embedding,training=True)\n    #mask_reshaped = tf.keras.layers.Reshape((max_seq_len,))(Inputs)\n    #encoder_op1 = encoder_block1(tx_embedding,mask_reshaped)\n    #encoder_op2 = encoder_block2(encoder_op1,mask_reshaped)\n\n    ## Narrow-Head Attention Model\n    #mask_reshaped = tf.keras.layers.Reshape((160,))(mask)\n    embeddings =  transformer(inp=conv6,enc_padding_mask=None)\n    #embeddings = transformer(inp=conv6,enc_padding_mask=create_padding_mask(mask))\n    #residual_embeddings = tf.keras.layers.Add()([conv6,embeddings])\n\n    ### Output Layers\n    ## Initial Layers\n    gap_op = gap_layer(embeddings)\n    dense1 = tf.keras.layers.Dense(256,activation='relu')(gap_op)\n    dropout1 = tf.keras.layers.Dropout(rate)(dense1)\n    \n    ## ArcFace Output Network\n    dense2 = tf.keras.layers.Dense(256,kernel_initializer='he_normal',\n                kernel_regularizer=tf.keras.regularizers.l2(1e-4))(dropout1)\n    ##dense2 = tf.keras.layers.BatchNormalization()(dense2)\n    dense3 = arc_logit_layer(([dense2,Input_Labels]))\n    \n    ## Softmax Output Network\n    #dense2 = tf.keras.layers.Dense(256,activation='relu')(dropout1)\n    ###dropout2 = tf.keras.layers.Dropout(rate)(dense2) # Not to be included\n    #dense3 = tf.keras.layers.Dense(35,activation='softmax')(dense2)\n\n    #### Compiling Architecture            \n    ### ArcFace Model Compilation\n    model = tf.keras.models.Model(inputs=[Inputs,Input_Labels],outputs=dense3)\n    ### Softmax Model Compilation\n    #model = tf.keras.models.Model(inputs=Inputs,outputs=dense3)\n    model.load_weights('./PTB_train_OSV_Baseline.h5')\n    model.compile(tf.keras.optimizers.Adam(lr=1e-4,clipnorm=1.0),loss='categorical_crossentropy',metrics=['accuracy'])\n\nmodel.summary()      \ntf.keras.utils.plot_model(model)\n##### Model Training \n\n#### Model Checkpointing\n#! mkdir './Models'\n#filepath= \"/content/Models/saved-model-{epoch:02d}-{val_accuracy:.2f}.h5\"\n#checkpoint = tf.keras.callbacks.ModelCheckpoint(filepath,monitor='val_accuracy',save_best_only=False,mode='max')\nfilepath = './PTB_train_OSV_Baseline.h5'\ncheckpoint = tf.keras.callbacks.ModelCheckpoint(filepath,monitor='val_accuracy',save_best_only=True,mode='max',save_weights_only=True)\n\n#### Custom Learning Rate Schedule\n#def build_lrfn(lr_start=1e-4, lr_max=1e-3, \n#               lr_min=1e-6, lr_rampup_epochs=5, \n#               lr_sustain_epochs=0, lr_exp_decay=.87):\n#    lr_max = lr_max * tpu_strategy.num_replicas_in_sync\n\n#    def lrfn(epoch):\n#        if epoch < lr_rampup_epochs:\n#            lr = (lr_max - lr_start) / lr_rampup_epochs * epoch + lr_start\n#        elif epoch < lr_rampup_epochs + lr_sustain_epochs:\n#            lr = lr_max\n#        else:\n#            lr = (lr_max - lr_min) * lr_exp_decay**(epoch - lr_rampup_epochs - lr_sustain_epochs) + lr_min#\n#        return lr\n#    \n#    return lrfn\n\n#lrfn = build_lrfn()\n#lr_callback = tf.keras.callbacks.LearningRateScheduler(lrfn, verbose=1)\n#callback_list = [checkpoint,  lr_callback]\n\n#### Model Training\n#### Model Training\n### ArcFace Training\n#history = model.fit((X_train,y_train_ohot),y_train_ohot,epochs=500,batch_size=128,\n#                validation_data=((X_dev,y_dev_ohot),y_dev_ohot),validation_batch_size=128,\n#               callbacks=checkpoint)\n\n### Softmax Training \n#history = model.fit(X_train,y_train_ohot,epochs=250,batch_size=128,\n#                validation_data=(X_dev,y_dev_ohot),validation_batch_size=128,\n#                callbacks=checkpoint)\n\n\n##### Plotting Metrics  \n#### Accuracy and Loss Plots \n\n### Accuracy\nplt.plot(history.history['accuracy'])\nplt.plot(history.history['val_accuracy'])\nplt.title('Model Accuracy')\nplt.ylabel('Accuracy')\nplt.xlabel('Epoch')  \nplt.legend(['Train', 'Validation'], loc='best')\nplt.show()\n\n### Loss     \nplt.plot(history.history['loss'])  \nplt.plot(history.history['val_loss'])\nplt.title('Model Loss')  \nplt.ylabel('Loss')         \nplt.xlabel('epoch')\nplt.legend(['Train', 'Validation'], loc='best')   \nplt.show()      \n\n##### Saving Model            \n#model.save_weights('ECG_SCNRNet.h5' )","metadata":{"execution":{"iopub.status.busy":"2021-07-31T04:10:52.975628Z","iopub.execute_input":"2021-07-31T04:10:52.976334Z","iopub.status.idle":"2021-07-31T04:10:57.332329Z","shell.execute_reply.started":"2021-07-31T04:10:52.976293Z","shell.execute_reply":"2021-07-31T04:10:57.330972Z"},"trusted":true},"execution_count":24,"outputs":[{"name":"stdout","text":"Model: \"model_5\"\n__________________________________________________________________________________________________\nLayer (type)                    Output Shape         Param #     Connected to                     \n==================================================================================================\ninput_9 (InputLayer)            [(None, 640, 1)]     0                                            \n__________________________________________________________________________________________________\nconv1d_149 (Conv1D)             (None, 640, 32)      512         input_9[0][0]                    \n__________________________________________________________________________________________________\nconv1d_150 (Conv1D)             (None, 640, 64)      30784       conv1d_149[0][0]                 \n__________________________________________________________________________________________________\nconv1d_151 (Conv1D)             (None, 640, 128)     123008      conv1d_150[0][0]                 \n__________________________________________________________________________________________________\nself_cal__conv1d_24 (self_cal_C (None, 640, 128)     262464      conv1d_151[0][0]                 \n__________________________________________________________________________________________________\nself_cal__conv1d_25 (self_cal_C (None, 640, 128)     344384      self_cal__conv1d_24[0][0]        \n__________________________________________________________________________________________________\nconv1d_152 (Conv1D)             (None, 640, 128)     49280       conv1d_151[0][0]                 \n__________________________________________________________________________________________________\nadd_9 (Add)                     (None, 640, 128)     0           self_cal__conv1d_25[0][0]        \n                                                                 conv1d_152[0][0]                 \n__________________________________________________________________________________________________\nmax_pooling1d_6 (MaxPooling1D)  (None, 320, 128)     0           add_9[0][0]                      \n__________________________________________________________________________________________________\nself_cal__conv1d_26 (self_cal_C (None, 320, 256)     385472      max_pooling1d_6[0][0]            \n__________________________________________________________________________________________________\nself_cal__conv1d_27 (self_cal_C (None, 320, 256)     1376896     self_cal__conv1d_26[0][0]        \n__________________________________________________________________________________________________\nconv1d_153 (Conv1D)             (None, 320, 256)     98560       max_pooling1d_6[0][0]            \n__________________________________________________________________________________________________\nadd_10 (Add)                    (None, 320, 256)     0           self_cal__conv1d_27[0][0]        \n                                                                 conv1d_153[0][0]                 \n__________________________________________________________________________________________________\nmax_pooling1d_7 (MaxPooling1D)  (None, 160, 256)     0           add_10[0][0]                     \n__________________________________________________________________________________________________\nself_cal__conv1d_28 (self_cal_C (None, 160, 512)     1540992     max_pooling1d_7[0][0]            \n__________________________________________________________________________________________________\nself_cal__conv1d_29 (self_cal_C (None, 160, 512)     5506304     self_cal__conv1d_28[0][0]        \n__________________________________________________________________________________________________\nconv1d_154 (Conv1D)             (None, 160, 512)     393728      max_pooling1d_7[0][0]            \n__________________________________________________________________________________________________\nadd_11 (Add)                    (None, 160, 512)     0           self_cal__conv1d_29[0][0]        \n                                                                 conv1d_154[0][0]                 \n__________________________________________________________________________________________________\ntransformer_3 (Transformer)     (None, 160, 512)     4205568     add_11[0][0]                     \n__________________________________________________________________________________________________\nglobal_average_pooling1d_3 (Glo (None, 512)          0           transformer_3[0][0]              \n__________________________________________________________________________________________________\ndense_54 (Dense)                (None, 256)          131328      global_average_pooling1d_3[0][0] \n__________________________________________________________________________________________________\ndropout_23 (Dropout)            (None, 256)          0           dense_54[0][0]                   \n__________________________________________________________________________________________________\ndense_55 (Dense)                (None, 256)          65792       dropout_23[0][0]                 \n__________________________________________________________________________________________________\ninput_10 (InputLayer)           [(None, 23)]         0                                            \n__________________________________________________________________________________________________\narc_face_3 (ArcFace)            (None, 23)           5888        dense_55[0][0]                   \n                                                                 input_10[0][0]                   \n==================================================================================================\nTotal params: 14,520,960\nTrainable params: 14,520,960\nNon-trainable params: 0\n__________________________________________________________________________________________________\n","output_type":"stream"},{"output_type":"display_data","data":{"text/plain":"<Figure size 432x288 with 1 Axes>","image/png":"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MSbTZeiTWbNmmYULF+7WPrbecxGRta9Q++UFzBxTuYdKppTqq/fff5/9998/08UYcFJ9riKyyBiTsr9rVtYIfO31NJgyvTuZUkqRpYEgJ9BgA0GeBgKllMrKQJAXaGCbKaesYN/o46uUUumUfYHAGApC29lOGaUFWiNQSqnsCwQdjeSYMK25g/H5dPpbpZTKvkDQvBmAtvyaDBdEKaX2DtkXCFq2ABAqHJLhgiilMu24447jmWeeSVh2yy23cNlll6Xc/thjj8Xtvn7KKaewY8eOTttcd9113Hzzzd2+76OPPsqKFSt2Pv/Rj37E888/38fS7znZFwicGkGkZFiGC6KUyrS5c+fy0EMPJSx76KGHmDt3bo+vffLJJ6moqNil900OBNdffz0nnHDCLu1rT8i+1lKnRuAr1RqBUnuVp66Grcv27D6HHgQn/7zL1WeddRbXXnstoVCIvLw81q1bx+bNm3nwwQf59re/TUdHB2eddRY/+clPOr127NixLFy4kKqqKm688UbuueceampqGDVqFDNnzgTgj3/8I3feeSehUIiJEydy7733smTJEubNm8fLL7/MT3/6U/7xj39www038JnPfIazzjqL+fPnc9VVVxGJRDj00EO5/fbbyc/PZ+zYsVxwwQU89thjhMNh/va3vzFlypQ98jFlXY3ANG+mwZRRVqp3J1Mq21VWVjJ79myeeuopwNYGPv/5z3PjjTeycOFCli5dyssvv8zSpUu73MeiRYt46KGHWLJkCU8++SQLFizYue5zn/scCxYs4N1332X//ffnrrvu4sgjj+T000/npptuYsmSJUyYMGHn9oFAgAsvvJCHH36YZcuWEYlEuP3223eur6qq4p133uGyyy7rMf3UF1lXI4hsW8t6U0NNaUGmi6KU8urmyj2d3PTQGWecwUMPPcRdd93FI488wp133kkkEmHLli2sWLGCgw8+OOXrX331VT772c9SVFQEwOmnn75z3fLly7n22mvZsWMHra2tfPrTn+62LCtXrmTcuHHst99+AFxwwQXcdtttXHnllYANLAAzZ87kn//85+4e+k5prRGIyEkislJEVovI1SnW54vIw876t0RkbDrLAxDbtpq1ZhiTavReBEopOOOMM5g/fz7vvPMO7e3tVFZWcvPNNzN//nyWLl3Kqaee2uXU0z258MILufXWW1m2bBk/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\n"},"metadata":{"needs_background":"light"}},{"output_type":"display_data","data":{"text/plain":"<Figure size 432x288 with 1 Axes>","image/png":"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\n"},"metadata":{"needs_background":"light"}}]},{"cell_type":"markdown","source":"# Model Testing","metadata":{}},{"cell_type":"markdown","source":"## KNN based ArcFace Loss Testing","metadata":{}},{"cell_type":"code","source":"###### Testing Model - ArcFace Style                \nwith tpu_strategy.scope():     \n\n    def normalisation_layer(x):   \n        return(tf.math.l2_normalize(x, axis=1, epsilon=1e-12))\n\n    #X_dev_flipped = tf.image.flip_up_down(X_dev)  \n    #x_train_flipped = tf.image.flip_up_down(X_train_final)\n\n    predictive_model = tf.keras.models.Model(inputs=model.input,outputs=model.layers[-3].output)\n    predictive_model.compile(tf.keras.optimizers.Adam(lr=1e-4),loss='categorical_crossentropy',metrics=['accuracy'])\n\nwith tpu_strategy.scope():\n    y_in = tf.keras.layers.Input((23,))\n\n    Input_Layer = tf.keras.layers.Input((640,1))\n    op_1 = predictive_model([Input_Layer,y_in])\n\n    ##Input_Layer_Flipped = tf.keras.layers.Input((224,224,3))\n    ##op_2 = predictive_model([Input_Layer_Flipped,y_in]) \n    ##final_op = tf.keras.layers.Concatenate(axis=1)(op_1)\n\n    final_norm_op = tf.keras.layers.Lambda(normalisation_layer)(op_1)\n\n    testing_model = tf.keras.models.Model(inputs=[Input_Layer,y_in],outputs=final_norm_op)\n    testing_model.compile(tf.keras.optimizers.Adam(lr=1e-4),loss='categorical_crossentropy',metrics=['accuracy'])\n\n##### Nearest Neighbor Classification\nfrom sklearn.neighbors import KNeighborsClassifier\nTest_Embeddings = testing_model.predict((X_dev,y_dev_ohot))\nTrain_Embeddings = testing_model.predict((X_train,y_train_ohot))\n\ncol_mean = np.nanmean(Test_Embeddings, axis=0)\ninds = np.where(np.isnan(Test_Embeddings))\n#print(inds)\nTest_Embeddings[inds] = np.take(col_mean, inds[1])\n\ncol_mean = np.nanmean(Train_Embeddings, axis=0)\ninds = np.where(np.isnan(Train_Embeddings))\n#print(inds)\nTrain_Embeddings[inds] = np.take(col_mean, inds[1])\n\n#Test_Embeddings = np.nan_to_num(Test_Embeddings)\n\n##### Refining Test Embeddings\n#for i in range(Train_Embeddings.shape[0]):\n#    for j in range(Train_Embeddings.shape[1]):\n#        if(math.isnan(Train_Embeddings[i,j])):\n#            Train_Embeddings[i,j] == 0\n#        if(Train_Embeddings[i,j]>1e4):\n#            Train_Embeddings[i,j] == 1e4\n\n##### Refining Train Embeddings    \n#for i in range(Test_Embeddings.shape[0]):\n#    for j in range(Test_Embeddings.shape[1]):\n#        if(math.isnan(Test_Embeddings[i,j])):\n#            Test_Embeddings[i,j] == 0\n#        if(Test_Embeddings[i,j]>1e4 or math.isinf(Test_Embeddings[i,j])):\n#            Test_Embeddings[i,j] == 1e4\n\n#del(X_train_final,X_dev,X_dev_flipped,x_train_flipped)\n#gc.collect()\n\nTest_Accuracy_With_Train = []\nTest_Accuracy_With_Test = []\n                                                                     \nfor k in range(1,31):\n    knn = KNeighborsClassifier(n_neighbors=k,metric='euclidean')\n    knn.fit(Train_Embeddings,y_train)\n    Test_Accuracy_With_Train.append(knn.score(Test_Embeddings,y_dev))\n    knn.fit(Test_Embeddings,y_dev)\n    Test_Accuracy_With_Test.append(knn.score(Test_Embeddings,y_dev))\n\nprint('--------------------------------')\nprint(np.max(Test_Accuracy_With_Train))\nprint(np.max(Test_Accuracy_With_Test))\nprint('--------------------------------')\nprint(np.mean(Test_Accuracy_With_Train))\nprint(np.mean(Test_Accuracy_With_Test))\nprint('--------------------------------')\nprint((Test_Accuracy_With_Train)[0])\nprint((Test_Accuracy_With_Test)[0])\nprint('--------------------------------')\n\nplt.plot(np.arange(1,31),np.array(Test_Accuracy_With_Train),label='Test_Accuracy_With_Train')\nplt.plot(np.arange(1,31),np.array(Test_Accuracy_With_Test),label='Test_Accuracy_With_Test')\nplt.title('Testing Accuracy vs Number of Neighbors')\nplt.xlabel('Number of Neighbors')\nplt.ylabel('Test Accuracy')\nplt.legend()       \nplt.show()                 \n\nnp.savez_compressed('Test_Embeddings_PTB_290.npz',Test_Embeddings)\nnp.savez_compressed('Train_Embeddings_PTB_290.npz',Train_Embeddings)","metadata":{"execution":{"iopub.status.busy":"2021-07-31T04:11:01.559507Z","iopub.execute_input":"2021-07-31T04:11:01.559891Z","iopub.status.idle":"2021-07-31T04:11:52.111682Z","shell.execute_reply.started":"2021-07-31T04:11:01.559855Z","shell.execute_reply":"2021-07-31T04:11:52.110579Z"},"trusted":true},"execution_count":25,"outputs":[{"name":"stdout","text":"--------------------------------\n0.9294828744123573\n1.0\n--------------------------------\n0.8655249608238191\n0.9937094246698005\n--------------------------------\n0.9187374076561451\n1.0\n--------------------------------\n","output_type":"stream"},{"output_type":"display_data","data":{"text/plain":"<Figure size 432x288 with 1 Axes>","image/png":"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IxdffDEAubm5fPTR4fnuxowZw6OPPlrlcx3r+5Kdnc3NNwdu1gtfhhzxp1/D2xygvYi0wQkYw4ArvHcQkRRgh1ubuBPnCitEJAqYhtNxPrXMMc1VdZM4davBwE/VLJ9fxn+3lle//5mRp7VhxCmtfDqmSUIMr13bh6HPfc+Il2cz9fq+pCXGBrikxvguOTmZ3NxcwPlSa9CgAaNHj/b5+JkzZ9KgQQP69u1b6X5LliyhuLiYb775hn379hEfH38sxa5QUVERERGBGYO1b9++/PGPfyxd//7772nYsCFbtmyhSZMmzJo1i759+9KiRQumTnW+tnJzc8nOzua8887z67l8eV8qO9esrCyysgJ310SVr7CIrAGOujFBVU+o7DhVLRKRG4FPcS7HfcUdumQskK2q7wH9gYdERHFqNH9yD78U+DWQLCJXu2mey27fEJFUnAEXc4FRVZ3Dsfps0Wbu/3AxZ3dpyp3ndvLr2FbJ8Uz8fW+GPf8DI17+kamj+tI4PipAJTWh7L73F7F44+4azbNzi4bce0EXv47JycnhtttuY+/evaSkpDBhwgSaN2/Ok08+ybhx44iIiKBz5848/PDDjBs3jvDwcF5//XWeeuopTjvttHLznDRpEiNGjGDJkiVMnz6dK65wfkPOmTOHW265hX379hEdHc2XX35JXFwct99+O5988glhYWGMHDmSm266idatW5OdnU1KSgrZ2dmMHj2amTNnMmbMGFatWsXq1avJyMjgoYceYsSIEezb59w18PTTT5cGtkceeYTXX3+dsLAwzj33XEaOHMkll1zC3LlzAVixYgWXXXZZ6bq31NRUGjZsyMqVK2nXrh0bNmxg6NChzJo1i8GDBzNr1iweeOAB1q5dy/nnn8/cuXO55557OHDgAN9++y133nknAIsXL6Z///6sW7eOW2+91a+awdVXX01MTAzz5s2jX79+DBs2jFtuuYWDBw8SGxvL+PHj6dChAzNnzuTRRx/lgw8+YMyYMaxbt47Vq1dX6znL40to9g5bMcAlOH0LVVLVjygzL7mq3uO1PBU46rJaVX0deL2CPM/w5blrysK8XdwyOZduaY144rIehIX535HZpUUjXroqiytfmc0142fzxshTaBBtI9Ob2kdVuemmm5g+fTqpqalMmTKFu+++m1deeYWHH36YNWvWEB0dTX5+PomJiYwa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\n"},"metadata":{"needs_background":"light"}}]},{"cell_type":"markdown","source":"## t-SNE","metadata":{}},{"cell_type":"code","source":"####### t-SNE Plot Generation\n###### Model Creation\n#with tpu_strategy.scope():          \n#    tsne_model = tf.keras.models.Model(inputs=model.input,outputs=model.layers[-4].output)\n#    tsne_model.compile(tf.keras.optimizers.Adam(lr=1e-4),loss='categorical_crossentropy',metrics=['accuracy'])\n#tsne_model.summary()\n\n###### Model Predicted\n#embeddings_final = tsne_model.predict((X_dev,y_exp))\n\n###### t-SNE plot plotting\n##### Reduction to Lower Dimensions\ntsne_X_dev = TSNE(n_components=2,perplexity=30,learning_rate=10,n_iter=2000,n_iter_without_progress=50).fit_transform(Test_Embeddings)\n\n##### Plotting\nj = 0 # Index for rotating legend\nplt.rcParams[\"figure.figsize\"] = [24,16]\nmStyles = [\".\",\",\",\"o\",\"v\",\"^\",\"<\",\">\",\"1\",\"2\",\"3\",\"4\",\"8\",\"s\",\"p\",\"P\",\"*\",\"h\",\"H\",\"+\",\"x\",\"X\",\"D\",\"d\",\"|\",\"_\",\n           0,1,2,3,4,5,6,7,8,9,10,11,0,1,2,3,4,5,6,7,8,9,10]\nfor idx,color_index,marker_type in zip(list(np.arange(100)),sns.color_palette('muted',100),mStyles):\n    plt.scatter(tsne_X_dev[y_dev == idx, 0], tsne_X_dev[y_dev == idx, 1],marker=marker_type)\nplt.legend([str(j) for j in range(100)])\nplt.savefig('tsne_plot_5000_iters.png')\nplt.savefig('tsne_plot_5000_iters.pdf')\nplt.show()","metadata":{"execution":{"iopub.status.busy":"2021-07-31T04:11:52.113721Z","iopub.execute_input":"2021-07-31T04:11:52.114177Z","iopub.status.idle":"2021-07-31T04:12:07.489148Z","shell.execute_reply.started":"2021-07-31T04:11:52.114129Z","shell.execute_reply":"2021-07-31T04:12:07.488067Z"},"trusted":true},"execution_count":26,"outputs":[{"output_type":"display_data","data":{"text/plain":"<Figure size 1728x1152 with 1 Axes>","image/png":"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FMqKiIiIiIiIiIhIl9c/LR7/fOzSbaWc+dAnvLT0m5itb7fbKSgooLCwkGXLlvH111/HbO1wCmVFRERERERERESkW/FaUOs2+e2/1lB4ILYTs+np6UybNo0vvviCsrIyPB4PAIWFhQwcODAmeyiUFRERERERERERkW7FZkCC087d55/AoIzEdq9XUlJCWVkZALW1tSxcuJDs7GymTZvG66+/DsBzzz3Heeed1+69ABwxWUVERERERERERESkAxWV12IAFjBpaG/umzWGwb3aH8gCFBUVMWfOHEzTxOv1cuGFFzJjxgxGjhzJxRdfzK233sq4ceOYO3duTPZTKCsiIiIiIiIiIiJdntNuIzM1juvOOI5LcodgGEbM1h4zZgwrV65sdH3o0KEsW7YsZvv4KZQVERERERERERGRLq9Pchyf3XQ6Tnv3b2Tt/j+BiIiIiIiIiIiIHBF6QiALCmVFREREREREREREDiuFsiIiIiIiIiIiIiKHkUJZERERERERERERkcNIoayIiIiIiIiIiIjIYaRQVkRERERERERERI5odXV15ObmMnbsWEaNGsVtt90GwKOPPsqwYcMwDIN9+/bFbD9HzFYSERERERERERER6Ybi4uJYtGgRycnJuN1upkyZwtlnn83JJ5/MjBkzOO2002K6n0JZEREREREREREROaIZhkFycjIAbrcbt9uNYRiMGzeuQ/ZTfYGIiIiIiIiIiIgc8UzTJCcnh8zMTKZPn05eXl6H7aVQVkRERERERERERLqnsh0xW8put1NQUEBhYSHLli1jzZo1MVs7nEJZERERERERERER6X7yn4aHR/v+HkPp6elMmzaNBQsWxHTdYAplRUREREREREREpHs58A387ze+r//3G9/37VBSUkJZWRkAtbW1LFy4kOOPP76dDxmdQlkRERERERERERHpPiwL/v1T8NT7vvfUw1s/811vo6KiIqZNm8aYMWM48cQTmT59OjNmzOCRRx5h0KBBFBYWMmbMGK644oqY/AiOmKwiIiIiIiIiIiIicjjkPw3bPz30veWFbZ/Aimdg4uVtWnLMmDGsXLmy0fXrrruO6667rq1PGpUmZUVERERERERERKR7MN3wyQOAEfaCAR/f73u9G9CkrIiIiIiIiIiIiHQPdidc9Sl43ZA64ND18l1gd/le7wYUyoqIiIiIiIiIiEj3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p07llFNOicl+CmVFRERERLoIT1kZW889l+Lbb8c8cIDi3/+enVdfjVleHnKfglsRERE50llY1Jl13LnkTnZX7W73eosXL+att97i6KOP5uKLL2bRokX88Ic/BOCOO+6gpKSEP/7xj+3ex0+hrIiIiIhIB2lNeGqWl7PlzG/TsGnzoYt1dVR/tpid11wbct/Oq69mz333YR44wJ777osY3IqIiIj0ZAYG8fZ4/t+k/8eA5AHtXu/ee++lsLCQ7du38+qrr3L66afz4osv8uSTT/K///2PV155JWKtQVsplBURERER6QCtDU93XnMN3srKCAuZOAcNCrrvWqo//wKrthYAq7aW6s+/CAluRURERHqi4upiDAwATux/Im9+700uHHFhh+559dVXs2fPHiZPnkxOTg7/93//F5N1HTFZRUREREREQuy85lpqV68GtxsIDk+vIe3c8yiZP5++8+aRftGFeCsqcO/eDVEmaevXrw987TrmaGoLCkJvME1cQ4d21I8iIiIi0iU4bU76JvblqjFX8f3h38cwjA7Z57TTTuO0004DwOPxdMgeCmVFRERERDpAtPDUvXs3e+67D6u2lj333Uflh4swD5ThKdkXda34MaMDX6d991wqF/wPb3V14JotIYG073431j+CiIiISJfSO6E3C2YtwGlzdvajtJvqC0REREREOkDad8/FlpDQ6LqnZF+j6gH3rl3g9UZeKC6OtHPPC3ybONF3IrDhcgX+AkiYMF6Hf4mIiEiP1xMCWdCkrIiIiIhIm1iWRdlrfw+pIQj+CF1weBp4j9cLphm6kGkSP2oUNfn5WDU1oa/Z7dgcDhInTgjZL/3CC3EMyAp0qrmGDKbwpz+lZtnykAncgfffjz0trWN+AURERESkzYyu9CfoEydOtPLz8zv7MUREREREmmSWl7PrxhsDIaiRkEBi7omNQtCaFSuoW3eoD9ayLPbNnx9SPQCA0wkeT2inrGHQZ948kk6ciOvYY/nmRz+iYdNm32vx8STl5Qb2237J7JD+Wv+aCaNHc/TLL3XEL4GIiIhITK1fv57s7OzOfow2i/T8hmGssCxrYqT7VV8gIiIiItJKO6+5lurPv2hUQ7DzmmtD7kucMIFeP/rhob8u+YHvBacTgg+mcLsbH/Jlt1P9ySfEDRvGljO/fSiQBairo3rx54H9XMccHXECV4d/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\n"},"metadata":{"needs_background":"light"}}]}]}